﻿using System.Windows.Controls;

namespace Songhay.Wpf.Mvvm.Models
{
    /// <summary>
    /// Implements <see cref="IControlInteractionMessage&lt;TView&gt;"/>.
    /// </summary>
    /// <typeparam name="TView">The type of the view.</typeparam>
    public class ControlInteractionMessage<TView> : IControlInteractionMessage<TView> where TView : Control
    {
        #region IControlInteractionMessage<TView> Members

        /// <summary>
        /// Gets or sets the specified view.
        /// </summary>
        /// <value>The specified view.</value>
        public TView SpecifiedView { get; set; }

        #endregion

        #region IControlInteractionMessage Members

        /// <summary>
        /// Gets or sets the control value.
        /// </summary>
        /// <value>The control value.</value>
        public object ControlValue { get; set; }

        /// <summary>
        /// Gets or sets the control id.
        /// </summary>
        /// <value>The control id.</value>
        public string ControlId { get; set; }

        /// <summary>
        /// Gets or sets the control tag.
        /// </summary>
        /// <value>The control tag.</value>
        public string ControlTag { get; set; }

        #endregion
    }
}
